package org.ehe.business.project.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.ehe.common.mybatis.core.domain.BaseEntity2;

import java.time.LocalDateTime;

/**
 * 产品方案
 * @author :zhangnn
 * @className :ProjectSoution
 * @description: TODO
 * @date 2025-07-25 11:43:34
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("t_project_solution")
public class ProjectSolution extends BaseEntity2 {

    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    private Long projectId;

    private String projectName;

    /**
     * 方案名称
     */
    private String solutionName;

    /**
     * 方案附件ids
     */
    private String solutionFiles;

    private String version;

    private String status;

    /**
     * 状态：1-草稿（未提交），2-审核中，4-进行中，5-未通过，6-作废（只有在1、5）的情况下可以修改，20已完成
     */
    @TableField(exist = false)
    private String statusName;

    /**
     * 审核状态
     *      PENDING_SUBMIT(0,"待提交"),
     *     SUBMITTED(1,"已提交"),
     *     REJECTED(9,"已拒绝"),
     *     PROCESS(10, "审核中"), // 审核中
     *     APPROVE(20, "已审核"); // 审核通过
     */
    private String approveStatus;


    /**
     * 有效时常（小时）
     */
    private int estimatedHours;

    /**
     * 是否超期（0否  1是）
     */
    private String isOverdue;

    private LocalDateTime isOverdueEndTime;

    /**
     * 审核时间
     */
    private LocalDateTime auditTime;

    /**
     * 审核人
     */
    private String auditUser;

    /**
     * 截止时间
     */
    private LocalDateTime deadlineTime;

    private String remark;

}
